$(function () {
    //声明所有的电子邮件变量
    var mail = new Array("");
    window.sessionid = localStorage.getItem("sessionid");
    window.baseUrl = localStorage.getItem("baseUrl");
    $.ajax({
        type: "POST",
        url: window.baseUrl + "/xunyitang/westMedical/medicallist?jsessionid=" + window.sessionid,
        contentType: "application/x-www-form-urlencoded",
        data: { keyword: "", type: "keli" },
        dataType: "json",
        async: false,
        beforeSend: function (request) {
            request.setRequestHeader("Token", localStorage.getItem("Authorization"));
        },
        success: function (data) {
            if (null != data && null != data.rows) {

                for (var i = 0; i <data.rows.length; i++) {
                    var madicall = data.rows[i];
                    var liElement = $('<li class="autoli"><span class="ex"></span><span class="tail">' + madicall.name + '</span></li>');
                    liElement.appendTo(".xyt_medical_list");
                }
            }

        },
        error: function (data) {
            window.location.href = "../index.html";
        }
    });
    //生成一个个li，并加入到ul中
    // for(var i=0;i<mail.length;i++){
    // var liElement=$("<li class=\"autoli\"><span class=\"ex\"></span><span class=\"at\">@</span><span class=\"tail\">"+mail[i]+"</span></li>");
    // liElement.appendTo(".xyt_medical_list");
    // }
    //首先让list隐藏起来
    $(".xyt_medical_list").hide();
    $("#email").keyup(function (event) {
        //键入的内容不是上下箭头和回车
        if (event.keyCode != 38 && event.keyCode != 40 && event.keyCode != 13) {
            //如果输入的值不是空或者不以空格开头
            if ($.trim($(this).val()) != "" && $.trim($(this).val()).match(/^@/) == null) {
                $(".xyt_medical_list").show();
                //如果当前有已经高亮的下拉选项卡，那么将其移除
                if ($(".xyt_medical_list li:visible").hasClass("lilight")) {
                    $(".xyt_medical_list li").removeClass("lilight");
                }
                //如果还存在下拉选项卡，那么将其高亮
                if ($(".xyt_medical_list li:visible")) {
                    $(".xyt_medical_list li:visible:eq(0)").addClass("lilight");
                }
            } else {
                //否则不进行显示
                $(".xyt_medical_list").hide();
                $(".xyt_medical_list li").removeClass("lilight");
            }
            //输入的内容还没有包括@符号
            if ($.trim($(this).val()).match(/.*@/) == null) {
                $(".xyt_medical_list li .ex").text($(this).val());
            } else {
                //输入的符号已经包含了@
                var str = $(this).val();
                var strs = str.split("@");
                $(".xyt_medical_list li .ex").text(strs[0]);
                if ($(this).val().length >= strs[0].length + 1) {
                    tail = str.substr(strs[0].length + 1);
                    $(".xyt_medical_list li .tail").each(function () {
                        //如果数组中的元素是以文本中的后缀开头，那么就显示，否则不显示
                        if (!($(this).text().match(tail) != null && $(this).text().indexOf(tail) == 0)) {
                            //隐藏其他的li
                            $(this).parent().hide();
                        } else {
                            //显示所在的li
                            $(this).parent().show();
                        }
                    });
                }
            }
        }
        //按了回车时，将当前选中的元素写入到文本框中
        if (event.keyCode == 13) {
            $("#email").val($(".xyt_medical_list li.lilight:visible").text());
            $(".xyt_medical_list").hide();
        }
    });
//监听上下方向键
    $("#email").keydown(function (event) {
        //下方向键按下了
        if (event.keyCode == 40) {
            if ($(".xyt_medical_list li").is(".lilight")) {
                if ($(".xyt_medical_list li.lilight").nextAll().is("li:visible")) {
                    $(".xyt_medical_list li.lilight").removeClass("lilight").next("li").addClass("lilight");
                }
            }
        }
        //下方向键按下了
        if (event.keyCode == 38) {
            if ($(".xyt_medical_list li").is(".lilight")) {
                if ($(".xyt_medical_list li.lilight").prevAll().is("li:visible")) {
                    $(".xyt_medical_list li.lilight").removeClass("lilight").prev("li").addClass("lilight");
                }
            }
        }
    });
    //当鼠标点击某个下拉项时，选中该项，下拉列表隐藏
    $(".xyt_medical_list li").click(function () {
        $("#email").val($(this).text());
        $(".xyt_medical_list").hide();
    });
    //当鼠标划过某个下拉项时，选中该项，下拉列表隐藏
    $(".xyt_medical_list li").hover(function () {
        $(".xyt_medical_list li").removeClass("lilight");
        $(this).addClass("lilight");
    });
    //当鼠标点击其他位置，下拉列表隐藏
    $(document).click(function () {
        $(".xyt_medical_list").hide();
    });
});
